Skip to content

fix(core): simplify repo resolver contract - #1619

Merged
christso merged 1 commit into
mainfrom
fix/repo-resolver-contract
Jul 3, 2026
Merged

fix(core): simplify repo resolver contract#1619
christso merged 1 commit into
mainfrom
fix/repo-resolver-contract

Conversation

@christso

@christso christso commented Jul 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

Repo resolver scripts now choose only an acquisition path: {"status":"handled","path":"..."} handles a repo and {"status":"skip"} falls through. AgentV rejects the old handled/source/type/origin stdout shape instead of carrying compatibility aliases, and resolver output no longer advertises or rewrites a remote origin.

Git resolver paths still go through AgentV clone, sparse checkout, commit resolution, ancestor walking, and detached checkout. Non-Git resolver paths are treated as static directory snapshots: AgentV copies the directory into workspace.repos[].path, ignores Git-only fields for that repo, and restores resets by copying the same snapshot source again.

Docs now describe the machine-local repo_resolvers contract directly and remove the stale eval-level workspace.repos[].resolver row.

Related: Bead av-bp7z

Verification

  • bun test packages/core/test/evaluation/workspace/repo-manager.test.ts
  • bun test packages/core/test/evaluation/validation/config-validator.test.ts packages/core/test/evaluation/validation/eval-validator.test.ts packages/core/test/evaluation/workspace-config-parsing.test.ts
  • bun --filter @agentv/core typecheck
  • bun --filter @agentv/core build
  • bun --filter @agentv/core test
  • bun run build
  • bunx biome check packages/core/src/evaluation/workspace/repo-resolver.ts packages/core/src/evaluation/workspace/repo-manager.ts packages/core/test/evaluation/workspace/repo-manager.test.ts apps/web/src/content/docs/docs/next/guides/workspace-architecture.mdx docs/adr/0017-output-artifact-and-workspace-resolver-contract.md
  • git diff --check

Dogfood

Ran a temporary real CLI eval against octocat/Hello-World using a project-local repo_resolvers entry whose script emitted the new flat stdout contract. The eval materialized the repo through the resolver, cloned the returned local Git source, and a CLI target running inside the workspace verified both Hello World! and git=true.

Command:

AGENTV_HOME=/tmp/agentv-repo-resolver-dogfood.4eEQ53/agentv-home \
AGENTV_DATA_DIR=/tmp/agentv-repo-resolver-dogfood.4eEQ53/agentv-data \
bun apps/cli/src/cli.ts eval run \
  /tmp/agentv-repo-resolver-dogfood.4eEQ53/project/evals/repo-resolver-dogfood.eval.yaml \
  --target inspect_workspace \
  --output /tmp/agentv-repo-resolver-dogfood.4eEQ53/run-2

Result: 1/1 passed, score 100%, execution_status: ok. Run bundle: /tmp/agentv-repo-resolver-dogfood.4eEQ53/run-2.


Compound Engineering
Codex

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jul 3, 2026

Copy link
Copy Markdown

Deploying agentv with  Cloudflare Pages  Cloudflare Pages

Latest commit: 0301a96
Status: ✅  Deploy successful!
Preview URL: https://f194bdd4.agentv.pages.dev
Branch Preview URL: https://fix-repo-resolver-contract.agentv.pages.dev

View logs

@christso
christso force-pushed the fix/repo-resolver-contract branch from 166c574 to 0301a96 Compare July 3, 2026 11:35
@christso
christso marked this pull request as ready for review July 3, 2026 11:37
@christso
christso merged commit 6e1bc95 into main Jul 3, 2026
8 checks passed
@christso
christso deleted the fix/repo-resolver-contract branch July 3, 2026 11:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant